//++++++++++++++++++++++++++++++++++++
// QuantV 3.0.0 shader
// Original code by Rockstar Games
//++++++++++++++++++++++++++++++++++++
ps_4_0
dcl_constantbuffer cb1[16], immediateIndexed
dcl_constantbuffer cb2[20], immediateIndexed
dcl_constantbuffer cb3[59], immediateIndexed
dcl_constantbuffer cb5[8], immediateIndexed
dcl_constantbuffer cb6[15], immediateIndexed
dcl_sampler s0, mode_default
dcl_sampler s11, mode_default
dcl_sampler s15, mode_comparison
dcl_resource_texture2d (float,float,float,float) t0
dcl_resource_texture2d (float,float,float,float) t11
dcl_resource_texture2d (float,float,float,float) t15
dcl_input_ps linear centroid v0.xyw
dcl_input_ps linear v1.xy
dcl_input_ps linear v1.z
dcl_input_ps linear v2.xyz
dcl_input_ps linear v3.xyz
dcl_input_ps_siv linear noperspective v4.xy, position
dcl_output o0.xyzw
dcl_output o1.x
dcl_output o2.x
dcl_temps 22
dcl_indexableTemp x0[4], 4
sample r0.xyzw, v1.xyxx, t0.xyzw, s0
dp3 r1.x, v2.xyzx, v2.xyzx
rsq r1.x, r1.x
mul r1.yzw, r1.xxxx, v2.xxyz
mul r0.w, r0.w, v0.w
mul r2.xy, v0.xyxx, cb2[12].zyzz
mul r0.xyz, r0.xyzx, r0.xyzx
add r3.xyz, -v3.xyzx, cb1[15].xyzx
dp3 r2.z, r3.xyzx, cb1[14].xyzx
add r3.xyz, v3.xyzx, -cb1[15].xyzx
mul r4.xyz, r3.yyyy, cb6[1].xyzx
mad r4.xyz, r3.xxxx, cb6[0].xyzx, r4.xyzx
mad r4.xyz, r3.zzzz, cb6[2].xyzx, r4.xyzx
mad r5.xyz, r4.xyzx, cb6[4].xyzx, cb6[8].xyzx
mov x0[0].xyz, r5.xyzx
mad r6.xyz, r4.xyzx, cb6[5].xyzx, cb6[9].xyzx
mov x0[1].xyz, r6.xyzx
mad r7.xyz, r4.xyzx, cb6[6].xyzx, cb6[10].xyzx
mov x0[2].xyz, r7.xyzx
mad r4.xyz, r4.xyzx, cb6[7].xyzx, cb6[11].xyzx
mov x0[3].xyz, r4.xyzx
mul r8.yw, cb6[14].zzzw, l(0.000000e+000, -3.460965e-001, 0.000000e+000, 3.284898e-001)
mad r2.w, -cb6[14].z, l(1.500000e+000), l(1.000000e+000)
mul r2.w, r2.w, l(5.000000e-001)
max r3.w, |r7.y|, |r7.x|
lt r3.w, r3.w, r2.w
movc r3.w, r3.w, l(2), l(3)
max r4.z, |r6.y|, |r6.x|
lt r4.z, r4.z, r2.w
movc r3.w, r4.z, l(1), r3.w
max r4.z, |r5.y|, |r5.x|
lt r2.w, r4.z, r2.w
movc r2.w, r2.w, l(0), r3.w
mov r5.xyz, x0[r2.w + 0].xyzx
itof r2.w, r2.w
add r3.w, r2.w, l(5.000000e-001)
mul r3.w, r3.w, l(2.500000e-001)
eq r6.xyzw, l(0.000000e+000, 1.000000e+000, 2.000000e+000, 3.000000e+000), r2.wwww
and r6.xyzw, r6.xyzw, l(0x3f800000, 0x3f800000, 0x3f800000, 0x3f800000)
dp4 r2.w, r6.xyzw, cb6[12].xyzw
dp4 r4.z, r6.xyzw, cb6[13].xyzw
add r6.x, r5.x, l(5.000000e-001)
mad r6.y, r5.y, l(2.500000e-001), r3.w
ne r3.w, r2.w, l(0.000000e+000)
add r2.w, -r2.w, r5.z
deriv_rtx r7.xyw, r6.xyxy
deriv_rtx r7.z, r2.w
deriv_rty r9.xyz, r6.yxyy
deriv_rty r9.w, r2.w
mul r5.xy, r7.ywyy, r9.ywyy
mad r10.xy, r7.xzxx, r9.xzxx, -r5.xyxx
div r4.w, l(1.000000e+000, 1.000000e+000, 1.000000e+000, 1.000000e+000), r10.x
mul r5.x, r7.z, r9.y
mad r10.z, r7.x, r9.w, -r5.x
mul r5.xy, r4.wwww, r10.yzyy
max r5.xy, r5.xyxx, l(0.000000e+000, 0.000000e+000, 0.000000e+000, 0.000000e+000)
min r5.xy, r5.xyxx, l(5.000000e-001, 5.000000e-001, 0.000000e+000, 0.000000e+000)
mad r2.w, -r4.z, r5.x, r2.w
mad r2.w, -r4.z, r5.y, r2.w
movc r8.z, r3.w, r2.w, r5.z
mov r6.z, l(0)
add r5.xyz, r6.xyzx, r8.ywzy
mul r8.xy, cb6[14].zwzz, l(-7.992915e-001, 2.017406e-001, 0.000000e+000, 0.000000e+000)
add r7.xyz, r6.xyzx, r8.xyzx
mul r8.xy, cb6[14].zwzz, l(-3.117551e-002, 1.793378e-001, 0.000000e+000, 0.000000e+000)
add r9.xyz, r6.xyzx, r8.xyzx
mul r8.xy, cb6[14].zwzz, l(5.147495e-001, 2.535025e-001, 0.000000e+000, 0.000000e+000)
add r10.xyz, r6.xyzx, r8.xyzx
mul r8.xy, cb6[14].zwzz, l(-7.286972e-002, 8.097341e-003, 0.000000e+000, 0.000000e+000)
add r11.xyz, r6.xyzx, r8.xyzx
mul r8.xy, cb6[14].zwzz, l(-9.697813e-001, 3.452161e-002, 0.000000e+000, 0.000000e+000)
add r12.xyz, r6.xyzx, r8.xyzx
mul r8.xy, cb6[14].zwzz, l(5.455467e-001, 2.412854e-002, 0.000000e+000, 0.000000e+000)
add r13.xyz, r6.xyzx, r8.xyzx
mul r8.xy, cb6[14].zwzz, l(-2.890611e-002, -1.367846e-001, 0.000000e+000, 0.000000e+000)
add r14.xyz, r6.xyzx, r8.xyzx
mul r8.xy, cb6[14].zwzz, l(-4.795115e-001, -2.448329e-001, 0.000000e+000, 0.000000e+000)
add r15.xyz, r6.xyzx, r8.xyzx
mul r8.xy, cb6[14].zwzz, l(7.587884e-001, -1.121092e-001, 0.000000e+000, 0.000000e+000)
add r16.xyz, r6.xyzx, r8.xyzx
mul r8.xy, cb6[14].zwzz, l(3.393526e-001, -2.493278e-001, 0.000000e+000, 0.000000e+000)
add r17.xyz, r6.xyzx, r8.xyzx
mul r8.xy, cb6[14].zwzz, l(1.070598e+000, 2.081226e-001, 0.000000e+000, 0.000000e+000)
add r18.xyz, r6.xyzx, r8.xyzx
mul r8.xy, cb6[14].zwzz, l(1.294038e+000, -1.807768e-002, 0.000000e+000, 0.000000e+000)
add r19.xyz, r6.xyzx, r8.xyzx
mul r8.xy, cb6[14].zwzz, l(-7.475631e-001, -1.139743e-001, 0.000000e+000, 0.000000e+000)
add r20.xyz, r6.xyzx, r8.xyzx
mul r8.xy, cb6[14].zwzz, l(9.477217e-001, -2.487635e-001, 0.000000e+000, 0.000000e+000)
add r21.xyz, r6.xyzx, r8.xyzx
mul r8.xy, cb6[14].zwzz, l(-1.343153e+000, -8.858406e-002, 0.000000e+000, 0.000000e+000)
add r6.xyz, r6.xyzx, r8.xyzx
sample_c_lz r5.x, r5.xyxx, t15.xxxx, s15, r5.z
sample_c_lz r5.y, r7.xyxx, t15.xxxx, s15, r7.z
sample_c_lz r5.z, r9.xyxx, t15.xxxx, s15, r9.z
sample_c_lz r5.w, r10.xyxx, t15.xxxx, s15, r10.z
sample_c_lz r7.x, r11.xyxx, t15.xxxx, s15, r11.z
sample_c_lz r7.y, r12.xyxx, t15.xxxx, s15, r12.z
sample_c_lz r7.z, r13.xyxx, t15.xxxx, s15, r13.z
sample_c_lz r7.w, r14.xyxx, t15.xxxx, s15, r14.z
sample_c_lz r8.x, r15.xyxx, t15.xxxx, s15, r15.z
sample_c_lz r8.y, r16.xyxx, t15.xxxx, s15, r16.z
sample_c_lz r8.z, r17.xyxx, t15.xxxx, s15, r17.z
sample_c_lz r8.w, r18.xyxx, t15.xxxx, s15, r18.z
sample_c_lz r9.x, r19.xyxx, t15.xxxx, s15, r19.z
sample_c_lz r9.y, r20.xyxx, t15.xxxx, s15, r20.z
sample_c_lz r9.z, r21.xyxx, t15.xxxx, s15, r21.z
sample_c_lz r9.w, r6.xyxx, t15.xxxx, s15, r6.z
add r5.xyzw, r5.xyzw, r7.xyzw
add r5.xyzw, r8.xyzw, r5.xyzw
add r5.xyzw, r9.xyzw, r5.xyzw
dp4 r2.w, r5.xyzw, l(1.000000e+000, 1.000000e+000, 1.000000e+000, 1.000000e+000)
mad_sat r2.z, r2.z, cb6[0].w, cb6[1].w
max r3.w, |r4.y|, |r4.x|
mad_sat r3.w, r3.w, l(1.500000e+001), l(-6.300000e+000)
add r2.z, -r2.z, l(1.000000e+000)
mul r2.z, r3.w, r2.z
mad r2.z, r2.w, l(6.250000e-002), r2.z
mul r2.xyz, r2.xyzx, r2.xyzx
min r2.z, r2.z, l(1.000000e+000)
mad_sat r2.w, v3.z, cb6[3].x, cb6[3].y
sqrt r2.w, r2.w
mul r2.w, r2.w, cb6[3].z
mad r2.z, r2.w, -r2.z, r2.z
dp3_sat r2.w, r1.yzwy, -cb3[0].xyzx
mul r4.xyz, r0.xyzx, r2.wwww
mul r4.xyz, r4.xyzx, cb3[1].xyzx
ige r2.w, l(0), cb3[2].x
eq r3.w, cb3[19].w, l(0.000000e+000)
add r5.xyz, -v3.xyzx, cb3[3].xyzx
add r6.xyz, v3.xyzx, -cb3[3].xyzx
dp3 r4.w, r6.xyzx, cb3[11].xyzx
add r5.w, cb3[19].w, l(1.000000e-004)
div_sat r4.w, r4.w, r5.w
mul r4.w, r4.w, cb3[19].w
mad r6.xyz, cb3[11].xyzx, r4.wwww, cb3[3].xyzx
add r6.xyz, r6.xyzx, -v3.xyzx
movc r5.xyz, r3.wwww, r5.xyzx, r6.xyzx
dp3 r3.w, r5.xyzx, r5.xyzx
add r5.xyz, r5.xyzx, l(1.000000e-006, 1.000000e-006, 1.000000e-006, 0.000000e+000)
dp3 r4.w, r5.xyzx, r5.xyzx
rsq r4.w, r4.w
mul r5.xyz, r4.wwww, r5.xyzx
mad_sat r3.w, -r3.w, cb3[3].w, l(1.000000e+000)
add r4.w, -cb3[11].w, l(1.000000e+000)
mad r4.w, r4.w, r3.w, cb3[11].w
div r3.w, r3.w, r4.w
dp3 r4.w, r5.xyzx, -cb3[11].xyzx
mad_sat r4.w, r4.w, cb3[27].x, cb3[35].x
dp3_sat r5.x, r5.xyzx, r1.yzwy
mul r4.w, r4.w, r5.x
mul r3.w, r3.w, r4.w
lt r21.x, cb3[19].y, cb3[19].x
mul r21.y, cb3[19].y, l(2.865200e+000)
lt r21.y, cb3[19].x, r21.y
and r21.x, r21.y, r21.x
mul r21.y, cb3[19].z, l(2.959100e+000)
lt r21.y, r21.y, cb3[19].y
and r21.x, r21.y, r21.x
movc r21.xyz, r21.xxxx, cb3[19].yyyy, cb3[19].xyzx
mul r5.xyz, r3.wwww, r21.xyzx
mul r5.xyz, r0.xyzx, r5.xyzx
movc r5.xyz, r2.wwww, l(0,0,0,0), r5.xyzx
ilt r3.w, l(0), cb3[2].x
if_nz r3.w
  ige r3.w, l(1), cb3[2].x
  or r2.w, r2.w, r3.w
  eq r3.w, cb3[20].w, l(0.000000e+000)
  add r6.xyz, -v3.xyzx, cb3[4].xyzx
  add r7.xyz, v3.xyzx, -cb3[4].xyzx
  dp3 r4.w, r7.xyzx, cb3[12].xyzx
  add r5.w, cb3[20].w, l(1.000000e-004)
  div_sat r4.w, r4.w, r5.w
  mul r4.w, r4.w, cb3[20].w
  mad r7.xyz, cb3[12].xyzx, r4.wwww, cb3[4].xyzx
  add r7.xyz, r7.xyzx, -v3.xyzx
  movc r6.xyz, r3.wwww, r6.xyzx, r7.xyzx
  dp3 r3.w, r6.xyzx, r6.xyzx
  add r6.xyz, r6.xyzx, l(1.000000e-006, 1.000000e-006, 1.000000e-006, 0.000000e+000)
  dp3 r4.w, r6.xyzx, r6.xyzx
  rsq r4.w, r4.w
  mul r6.xyz, r4.wwww, r6.xyzx
  mad_sat r3.w, -r3.w, cb3[4].w, l(1.000000e+000)
  add r4.w, -cb3[12].w, l(1.000000e+000)
  mad r4.w, r4.w, r3.w, cb3[12].w
  div r3.w, r3.w, r4.w
  dp3 r4.w, r6.xyzx, -cb3[12].xyzx
  mad_sat r4.w, r4.w, cb3[28].x, cb3[36].x
  dp3_sat r5.w, r6.xyzx, r1.yzwy
  mul r4.w, r4.w, r5.w
  mul r3.w, r3.w, r4.w
  lt r21.x, cb3[20].y, cb3[20].x
  mul r21.y, cb3[20].y, l(2.865200e+000)
  lt r21.y, cb3[20].x, r21.y
  and r21.x, r21.y, r21.x
  mul r21.y, cb3[20].z, l(2.959100e+000)
  lt r21.y, r21.y, cb3[20].y
  and r21.x, r21.y, r21.x
  movc r21.xyz, r21.xxxx, cb3[20].yyyy, cb3[20].xyzx
  mul r6.xyz, r3.wwww, r21.xyzx
  mad r6.xyz, r6.xyzx, r0.xyzx, r5.xyzx
  movc r5.xyz, r2.wwww, r5.xyzx, r6.xyzx
else
  mov r2.w, l(-1)
endif
if_z r2.w
  ige r3.w, l(2), cb3[2].x
  or r2.w, r2.w, r3.w
  eq r3.w, cb3[21].w, l(0.000000e+000)
  add r6.xyz, -v3.xyzx, cb3[5].xyzx
  add r7.xyz, v3.xyzx, -cb3[5].xyzx
  dp3 r4.w, r7.xyzx, cb3[13].xyzx
  add r5.w, cb3[21].w, l(1.000000e-004)
  div_sat r4.w, r4.w, r5.w
  mul r4.w, r4.w, cb3[21].w
  mad r7.xyz, cb3[13].xyzx, r4.wwww, cb3[5].xyzx
  add r7.xyz, r7.xyzx, -v3.xyzx
  movc r6.xyz, r3.wwww, r6.xyzx, r7.xyzx
  dp3 r3.w, r6.xyzx, r6.xyzx
  add r6.xyz, r6.xyzx, l(1.000000e-006, 1.000000e-006, 1.000000e-006, 0.000000e+000)
  dp3 r4.w, r6.xyzx, r6.xyzx
  rsq r4.w, r4.w
  mul r6.xyz, r4.wwww, r6.xyzx
  mad_sat r3.w, -r3.w, cb3[5].w, l(1.000000e+000)
  add r4.w, -cb3[13].w, l(1.000000e+000)
  mad r4.w, r4.w, r3.w, cb3[13].w
  div r3.w, r3.w, r4.w
  dp3 r4.w, r6.xyzx, -cb3[13].xyzx
  mad_sat r4.w, r4.w, cb3[29].x, cb3[37].x
  dp3_sat r5.w, r6.xyzx, r1.yzwy
  mul r4.w, r4.w, r5.w
  mul r3.w, r3.w, r4.w
  lt r21.x, cb3[21].y, cb3[21].x
  mul r21.y, cb3[21].y, l(2.865200e+000)
  lt r21.y, cb3[21].x, r21.y
  and r21.x, r21.y, r21.x
  mul r21.y, cb3[21].z, l(2.959100e+000)
  lt r21.y, r21.y, cb3[21].y
  and r21.x, r21.y, r21.x
  movc r21.xyz, r21.xxxx, cb3[21].yyyy, cb3[21].xyzx
  mul r6.xyz, r3.wwww, r21.xyzx
  mad r6.xyz, r6.xyzx, r0.xyzx, r5.xyzx
  movc r5.xyz, r2.wwww, r5.xyzx, r6.xyzx
else
  mov r2.w, l(-1)
endif
if_z r2.w
  ige r3.w, l(3), cb3[2].x
  or r2.w, r2.w, r3.w
  eq r3.w, cb3[22].w, l(0.000000e+000)
  add r6.xyz, -v3.xyzx, cb3[6].xyzx
  add r7.xyz, v3.xyzx, -cb3[6].xyzx
  dp3 r4.w, r7.xyzx, cb3[14].xyzx
  add r5.w, cb3[22].w, l(1.000000e-004)
  div_sat r4.w, r4.w, r5.w
  mul r4.w, r4.w, cb3[22].w
  mad r7.xyz, cb3[14].xyzx, r4.wwww, cb3[6].xyzx
  add r7.xyz, r7.xyzx, -v3.xyzx
  movc r6.xyz, r3.wwww, r6.xyzx, r7.xyzx
  dp3 r3.w, r6.xyzx, r6.xyzx
  add r6.xyz, r6.xyzx, l(1.000000e-006, 1.000000e-006, 1.000000e-006, 0.000000e+000)
  dp3 r4.w, r6.xyzx, r6.xyzx
  rsq r4.w, r4.w
  mul r6.xyz, r4.wwww, r6.xyzx
  mad_sat r3.w, -r3.w, cb3[6].w, l(1.000000e+000)
  add r4.w, -cb3[14].w, l(1.000000e+000)
  mad r4.w, r4.w, r3.w, cb3[14].w
  div r3.w, r3.w, r4.w
  dp3 r4.w, r6.xyzx, -cb3[14].xyzx
  mad_sat r4.w, r4.w, cb3[30].x, cb3[38].x
  dp3_sat r5.w, r6.xyzx, r1.yzwy
  mul r4.w, r4.w, r5.w
  mul r3.w, r3.w, r4.w
  lt r22.x, cb3[22].y, cb3[22].x
  mul r22.y, cb3[22].y, l(2.865200e+000)
  lt r22.y, cb3[22].x, r22.y
  and r22.x, r22.y, r22.x
  mul r22.y, cb3[22].z, l(2.959100e+000)
  lt r22.y, r22.y, cb3[22].y
  and r22.x, r22.y, r22.x
  movc r22.xyz, r22.xxxx, cb3[22].yyyy, cb3[22].xyzx
  mul r6.xyz, r3.wwww, r22.xyzx
  mad r6.xyz, r6.xyzx, r0.xyzx, r5.xyzx
  movc r5.xyz, r2.wwww, r5.xyzx, r6.xyzx
else
  mov r2.w, l(-1)
endif
if_z r2.w
  ige r3.w, l(4), cb3[2].x
  or r2.w, r2.w, r3.w
  eq r3.w, cb3[23].w, l(0.000000e+000)
  add r6.xyz, -v3.xyzx, cb3[7].xyzx
  add r7.xyz, v3.xyzx, -cb3[7].xyzx
  dp3 r4.w, r7.xyzx, cb3[15].xyzx
  add r5.w, cb3[23].w, l(1.000000e-004)
  div_sat r4.w, r4.w, r5.w
  mul r4.w, r4.w, cb3[23].w
  mad r7.xyz, cb3[15].xyzx, r4.wwww, cb3[7].xyzx
  add r7.xyz, r7.xyzx, -v3.xyzx
  movc r6.xyz, r3.wwww, r6.xyzx, r7.xyzx
  dp3 r3.w, r6.xyzx, r6.xyzx
  add r6.xyz, r6.xyzx, l(1.000000e-006, 1.000000e-006, 1.000000e-006, 0.000000e+000)
  dp3 r4.w, r6.xyzx, r6.xyzx
  rsq r4.w, r4.w
  mul r6.xyz, r4.wwww, r6.xyzx
  mad_sat r3.w, -r3.w, cb3[7].w, l(1.000000e+000)
  add r4.w, -cb3[15].w, l(1.000000e+000)
  mad r4.w, r4.w, r3.w, cb3[15].w
  div r3.w, r3.w, r4.w
  dp3 r4.w, r6.xyzx, -cb3[15].xyzx
  mad_sat r4.w, r4.w, cb3[31].x, cb3[39].x
  dp3_sat r5.w, r6.xyzx, r1.yzwy
  mul r4.w, r4.w, r5.w
  mul r3.w, r3.w, r4.w
  lt r22.x, cb3[23].y, cb3[23].x
  mul r22.y, cb3[23].y, l(2.865200e+000)
  lt r22.y, cb3[23].x, r22.y
  and r22.x, r22.y, r22.x
  mul r22.y, cb3[23].z, l(2.959100e+000)
  lt r22.y, r22.y, cb3[23].y
  and r22.x, r22.y, r22.x
  movc r22.xyz, r22.xxxx, cb3[23].yyyy, cb3[23].xyzx
  mul r6.xyz, r3.wwww, r22.xyzx
  mad r6.xyz, r6.xyzx, r0.xyzx, r5.xyzx
  movc r5.xyz, r2.wwww, r5.xyzx, r6.xyzx
else
  mov r2.w, l(-1)
endif
if_z r2.w
  ige r3.w, l(5), cb3[2].x
  or r2.w, r2.w, r3.w
  eq r3.w, cb3[24].w, l(0.000000e+000)
  add r6.xyz, -v3.xyzx, cb3[8].xyzx
  add r7.xyz, v3.xyzx, -cb3[8].xyzx
  dp3 r4.w, r7.xyzx, cb3[16].xyzx
  add r5.w, cb3[24].w, l(1.000000e-004)
  div_sat r4.w, r4.w, r5.w
  mul r4.w, r4.w, cb3[24].w
  mad r7.xyz, cb3[16].xyzx, r4.wwww, cb3[8].xyzx
  add r7.xyz, r7.xyzx, -v3.xyzx
  movc r6.xyz, r3.wwww, r6.xyzx, r7.xyzx
  dp3 r3.w, r6.xyzx, r6.xyzx
  add r6.xyz, r6.xyzx, l(1.000000e-006, 1.000000e-006, 1.000000e-006, 0.000000e+000)
  dp3 r4.w, r6.xyzx, r6.xyzx
  rsq r4.w, r4.w
  mul r6.xyz, r4.wwww, r6.xyzx
  mad_sat r3.w, -r3.w, cb3[8].w, l(1.000000e+000)
  add r4.w, -cb3[16].w, l(1.000000e+000)
  mad r4.w, r4.w, r3.w, cb3[16].w
  div r3.w, r3.w, r4.w
  dp3 r4.w, r6.xyzx, -cb3[16].xyzx
  mad_sat r4.w, r4.w, cb3[32].x, cb3[40].x
  dp3_sat r5.w, r6.xyzx, r1.yzwy
  mul r4.w, r4.w, r5.w
  mul r3.w, r3.w, r4.w
  mul r6.xyz, r3.wwww, cb3[24].yyyy
  mad r6.xyz, r6.xyzx, r0.xyzx, r5.xyzx
  movc r5.xyz, r2.wwww, r5.xyzx, r6.xyzx
else
  mov r2.w, l(-1)
endif
if_z r2.w
  ige r3.w, l(6), cb3[2].x
  or r2.w, r2.w, r3.w
  eq r3.w, cb3[25].w, l(0.000000e+000)
  add r6.xyz, -v3.xyzx, cb3[9].xyzx
  add r7.xyz, v3.xyzx, -cb3[9].xyzx
  dp3 r4.w, r7.xyzx, cb3[17].xyzx
  add r5.w, cb3[25].w, l(1.000000e-004)
  div_sat r4.w, r4.w, r5.w
  mul r4.w, r4.w, cb3[25].w
  mad r7.xyz, cb3[17].xyzx, r4.wwww, cb3[9].xyzx
  add r7.xyz, r7.xyzx, -v3.xyzx
  movc r6.xyz, r3.wwww, r6.xyzx, r7.xyzx
  dp3 r3.w, r6.xyzx, r6.xyzx
  add r6.xyz, r6.xyzx, l(1.000000e-006, 1.000000e-006, 1.000000e-006, 0.000000e+000)
  dp3 r4.w, r6.xyzx, r6.xyzx
  rsq r4.w, r4.w
  mul r6.xyz, r4.wwww, r6.xyzx
  mad_sat r3.w, -r3.w, cb3[9].w, l(1.000000e+000)
  add r4.w, -cb3[17].w, l(1.000000e+000)
  mad r4.w, r4.w, r3.w, cb3[17].w
  div r3.w, r3.w, r4.w
  dp3 r4.w, r6.xyzx, -cb3[17].xyzx
  mad_sat r4.w, r4.w, cb3[33].x, cb3[41].x
  dp3_sat r5.w, r6.xyzx, r1.yzwy
  mul r4.w, r4.w, r5.w
  mul r3.w, r3.w, r4.w
  lt r22.x, cb3[25].y, cb3[25].x
  mul r22.y, cb3[25].y, l(2.865200e+000)
  lt r22.y, cb3[25].x, r22.y
  and r22.x, r22.y, r22.x
  mul r22.y, cb3[25].z, l(2.959100e+000)
  lt r22.y, r22.y, cb3[25].y
  and r22.x, r22.y, r22.x
  movc r22.xyz, r22.xxxx, cb3[25].yyyy, cb3[25].xyzx
  mul r6.xyz, r3.wwww, r22.xyzx
  mad r6.xyz, r6.xyzx, r0.xyzx, r5.xyzx
  movc r5.xyz, r2.wwww, r5.xyzx, r6.xyzx
else
  mov r2.w, l(-1)
endif
if_z r2.w
  ige r3.w, l(7), cb3[2].x
  or r2.w, r2.w, r3.w
  eq r3.w, cb3[26].w, l(0.000000e+000)
  add r6.xyz, -v3.xyzx, cb3[10].xyzx
  add r7.xyz, v3.xyzx, -cb3[10].xyzx
  dp3 r4.w, r7.xyzx, cb3[18].xyzx
  add r5.w, cb3[26].w, l(1.000000e-004)
  div_sat r4.w, r4.w, r5.w
  mul r4.w, r4.w, cb3[26].w
  mad r7.xyz, cb3[18].xyzx, r4.wwww, cb3[10].xyzx
  add r7.xyz, r7.xyzx, -v3.xyzx
  movc r6.xyz, r3.wwww, r6.xyzx, r7.xyzx
  dp3 r3.w, r6.xyzx, r6.xyzx
  add r6.xyz, r6.xyzx, l(1.000000e-006, 1.000000e-006, 1.000000e-006, 0.000000e+000)
  dp3 r4.w, r6.xyzx, r6.xyzx
  rsq r4.w, r4.w
  mul r6.xyz, r4.wwww, r6.xyzx
  mad_sat r3.w, -r3.w, cb3[10].w, l(1.000000e+000)
  add r4.w, -cb3[18].w, l(1.000000e+000)
  mad r4.w, r4.w, r3.w, cb3[18].w
  div r3.w, r3.w, r4.w
  dp3 r4.w, r6.xyzx, -cb3[18].xyzx
  mad_sat r4.w, r4.w, cb3[34].x, cb3[42].x
  dp3_sat r5.w, r6.xyzx, r1.yzwy
  mul r4.w, r4.w, r5.w
  mul r3.w, r3.w, r4.w
  lt r22.x, cb3[26].y, cb3[26].x
  mul r22.y, cb3[26].y, l(2.865200e+000)
  lt r22.y, cb3[26].x, r22.y
  and r22.x, r22.y, r22.x
  mul r22.y, cb3[26].z, l(2.959100e+000)
  lt r22.y, r22.y, cb3[26].y
  and r22.x, r22.y, r22.x
  movc r22.xyz, r22.xxxx, cb3[26].yyyy, cb3[26].xyzx
  mul r6.xyz, r3.wwww, r22.xyzx
  mad r6.xyz, r6.xyzx, r0.xyzx, r5.xyzx
  movc r5.xyz, r2.wwww, r5.xyzx, r6.xyzx
endif
mad r4.xyz, r4.xyzx, r2.zzzz, r5.xyzx
mad r1.x, v2.z, r1.x, cb3[43].w
mul r1.x, r1.x, cb3[44].w
max r1.x, r1.x, l(0.000000e+000)
mad r5.xyz, cb3[47].xyzx, r1.xxxx, cb3[48].xyzx
add r2.z, -cb2[13].z, l(1.000000e+000)
mad r6.xyz, cb3[45].xyzx, r1.xxxx, cb3[46].xyzx
mul r6.xyz, r6.xyzx, cb2[13].zzzz
mad r5.xyz, r5.xyzx, r2.zzzz, r6.xyzx
mul r2.yzw, r2.yyyy, r5.xxyz
mad r5.xyz, cb3[43].xyzx, r1.xxxx, cb3[44].xyzx
mov r6.x, cb3[46].w
mov r6.y, cb3[47].w
mov r6.z, cb3[48].w
dp3_sat r1.x, r6.xyzx, r1.yzwy
mad r1.xyz, cb3[49].xyzx, r1.xxxx, r5.xyzx
mad r1.xyz, r1.xyzx, r2.xxxx, r2.yzwy
mad r0.xyz, r1.xyzx, r0.xyzx, r4.xyzx
mul r0.w, r0.w, cb2[12].x
if_nz cb5[7].x
  dp3 r1.x, r3.xyzx, r3.xyzx
  sqrt r1.y, r1.x
  add r1.z, r1.y, -cb3[50].x
  max r1.z, r1.z, l(0.000000e+000)
  div r1.y, r1.z, r1.y
  mul r1.y, r1.y, r3.z
  mul r1.w, r1.y, cb3[52].z
  lt r1.y, l(1.000000e-002), |r1.y|
  mul r2.x, r1.w, l(-1.442695e+000)
  exp r2.x, r2.x
  add r2.x, -r2.x, l(1.000000e+000)
  div r1.w, r2.x, r1.w
  movc r1.y, r1.y, r1.w, l(1.000000)
  mul r1.w, r1.z, cb3[51].w
  mul r1.y, r1.y, r1.w
  min r1.y, r1.y, l(1.000000e+000)
  mul r1.y, r1.y, l(1.442695e+000)
  exp r1.y, r1.y
  min r1.y, r1.y, l(1.000000e+000)
  add r1.y, -r1.y, l(1.000000e+000)
  mul r1.w, r1.y, cb3[52].y
  rsq r1.x, r1.x
  mul r2.xyz, r1.xxxx, r3.xyzx
  dp3_sat r1.x, r2.xyzx, cb3[54].xyzx
  log r1.x, r1.x
  mul r1.x, r1.x, cb3[54].w
  exp r1.x, r1.x
  dp3_sat r2.x, r2.xyzx, cb3[53].xyzx
  log r2.x, r2.x
  mul r2.x, r2.x, cb3[53].w
  exp r2.x, r2.x
  mad r1.y, -r1.y, cb3[52].y, l(1.000000e+000)
  mul r1.y, r1.y, cb3[51].y
  add r2.y, r1.z, -cb3[52].x
  max r2.y, r2.y, l(0.000000e+000)
  mul r2.y, r2.y, cb3[51].x
  mul r2.y, r2.y, l(1.442695e+000)
  exp r2.y, r2.y
  add r2.y, -r2.y, l(1.000000e+000)
  mad_sat r1.w, r1.y, r2.y, r1.w
  mul r1.z, r1.z, -cb3[51].z
  mul r1.z, r1.z, l(1.442695e+000)
  exp r1.z, r1.z
  add r1.z, -r1.z, l(1.000000e+000)
  add r2.yzw, -cb3[56].xxyz, cb3[58].xxyz
  mad r2.yzw, r1.xxxx, r2.yyzw, cb3[56].xxyz
  add r4.xyz, -r2.yzwy, cb3[55].xyzx
  mad r2.xyz, r2.xxxx, r4.xyzx, r2.yzwy
  add r2.xyz, r2.xyzx, -cb3[57].xyzx
  mad r2.xyz, r1.zzzz, r2.xyzx, cb3[57].xyzx
  mov r4.x, cb3[55].w
  mov r4.y, cb3[56].w
  mov r4.z, cb3[57].w
  add r4.xyz, -r2.xyzx, r4.xyzx
  mad r1.xyz, r1.yyyy, r4.xyzx, r2.xyzx
  lt r2.x, l(0.000000e+000), cb2[19].y
  if_nz r2.x
    mul r2.xy, v4.xyxx, cb2[15].zwzz
    sample r2.xyzw, r2.xyxx, t11.xyzw, s11
    add r2.x, r2.x, l(-1.000000e+000)
    mad_sat r2.x, cb2[19].y, r2.x, l(1.000000e+000)
  else
    mov r2.x, l(1.000000)
  endif
  mad r1.xyz, r1.xyzx, r2.xxxx, -r0.xyzx
  mad r1.xyz, r1.wwww, r1.xyzx, r0.xyzx
else
  dp3 r1.w, r3.xyzx, r3.xyzx
  sqrt r2.x, r1.w
  add r2.y, r2.x, -cb3[50].x
  max r2.y, r2.y, l(0.000000e+000)
  div r2.x, r2.y, r2.x
  mul r2.x, r2.x, r3.z
  mul r2.z, r2.x, cb3[52].z
  lt r2.x, l(1.000000e-002), |r2.x|
  mul r2.w, r2.z, l(-1.442695e+000)
  exp r2.w, r2.w
  add r2.w, -r2.w, l(1.000000e+000)
  div r2.z, r2.w, r2.z
  movc r2.x, r2.x, r2.z, l(1.000000)
  mul r2.z, r2.y, cb3[51].w
  mul r2.x, r2.x, r2.z
  min r2.x, r2.x, l(1.000000e+000)
  mul r2.x, r2.x, l(1.442695e+000)
  exp r2.x, r2.x
  min r2.x, r2.x, l(1.000000e+000)
  add r2.x, -r2.x, l(1.000000e+000)
  mul r2.z, r2.x, cb3[52].y
  rsq r1.w, r1.w
  mul r3.xyz, r1.wwww, r3.xyzx
  dp3_sat r1.w, r3.xyzx, cb3[54].xyzx
  log r1.w, r1.w
  mul r1.w, r1.w, cb3[54].w
  exp r1.w, r1.w
  dp3_sat r2.w, r3.xyzx, cb3[53].xyzx
  log r2.w, r2.w
  mul r2.w, r2.w, cb3[53].w
  exp r2.w, r2.w
  mad r2.x, -r2.x, cb3[52].y, l(1.000000e+000)
  mul r2.x, r2.x, cb3[51].y
  add r3.x, r2.y, -cb3[52].x
  max r3.x, r3.x, l(0.000000e+000)
  mul r3.x, r3.x, cb3[51].x
  mul r3.x, r3.x, l(1.442695e+000)
  exp r3.x, r3.x
  add r3.x, -r3.x, l(1.000000e+000)
  mad_sat r2.z, r2.x, r3.x, r2.z
  mul r2.y, r2.y, -cb3[51].z
  mul r2.y, r2.y, l(1.442695e+000)
  exp r2.y, r2.y
  add r2.y, -r2.y, l(1.000000e+000)
  add r3.xyz, -cb3[56].xyzx, cb3[58].xyzx
  mad r3.xyz, r1.wwww, r3.xyzx, cb3[56].xyzx
  add r4.xyz, -r3.xyzx, cb3[55].xyzx
  mad r3.xyz, r2.wwww, r4.xyzx, r3.xyzx
  add r3.xyz, r3.xyzx, -cb3[57].xyzx
  mad r3.xyz, r2.yyyy, r3.xyzx, cb3[57].xyzx
  mov r4.x, cb3[55].w
  mov r4.y, cb3[56].w
  mov r4.z, cb3[57].w
  add r4.xyz, -r3.xyzx, r4.xyzx
  mad r2.xyw, r2.xxxx, r4.xyxz, r3.xyxz
  add r2.xyw, -r0.xyxz, r2.xyxw
  mad r1.xyz, r2.zzzz, r2.xywx, r0.xyzx
endif
mul o0.xyz, r1.xyzx, cb2[14].zzzz
lt r0.x, l(3.000000e-001), r0.w
and r0.x, r0.x, l(0x3f800000)
mul o1.x, r0.x, v1.z
mov o0.w, r0.w
mov o2.x, r0.x
ret